@@ -45,6 +45,8 @@ def DJANGO_WE_MESSAGE_CALLBACK_FUNC(request, data, decrypted=None): |
||
45 | 45 |
def DJANGO_WE_COMPONENT_CALLBACK_FUNC(request, appid, data, decrypted=None): |
46 | 46 |
""" WeChat Component Message Callback Func """ |
47 | 47 |
from account.models import UserInfo |
48 |
+ from utils.redis.connect import r |
|
49 |
+ from utils.redis.rkeys import SUBSCRIBE_USERINFO_LIST |
|
48 | 50 |
|
49 | 51 |
logger.info(appid) |
50 | 52 |
logger.info(data) |
@@ -63,6 +65,12 @@ def DJANGO_WE_COMPONENT_CALLBACK_FUNC(request, appid, data, decrypted=None): |
||
63 | 65 |
UserInfo.objects.using('fujifilm').filter(unionid=unionid).update(openid=openid, has_membercard=True, membercardid=membercardid, memberusercardcode=memberusercardcode) |
64 | 66 |
elif event == 'user_del_card': |
65 | 67 |
UserInfo.objects.using('fujifilm').filter(memberusercardcode=memberusercardcode).update(has_membercard=False) |
68 |
+ elif event == 'subscribe' or event == 'unsubscribe': |
|
69 |
+ brand_id = settings.COMPONENT_CALLBACK_CONFIG[tousername] |
|
70 |
+ r.rpushjson(SUBSCRIBE_USERINFO_LIST % brand_id, { |
|
71 |
+ 'brand_id': brand_id, |
|
72 |
+ 'openid': openid, |
|
73 |
+ }) |
|
66 | 74 |
|
67 | 75 |
# 腾龙服务号 |
68 | 76 |
if event == 'user_get_card': |
@@ -408,6 +408,10 @@ PHONE_2_ADMINISTRATIVE_DIVISION = 'https://www.baifubao.com/callback?cmd=1059&ca |
||
408 | 408 |
|
409 | 409 |
TESTING_SNS = ['000000'] |
410 | 410 |
|
411 |
+COMPONENT_CALLBACK_CONFIG = { |
|
412 |
+ 'tousername': 'brand_id', |
|
413 |
+} |
|
414 |
+ |
|
411 | 415 |
# 开发调试相关配置 |
412 | 416 |
if DEBUG: |
413 | 417 |
try: |
@@ -71,3 +71,5 @@ BOX_PROGRAM_VERSION_INFO = 'box:program:version:info' # STRING,BOX 程序版 |
||
71 | 71 |
MINI_PROGRAM_GIS_LIST = 'tamron:miniprogram:gis:list' |
72 | 72 |
|
73 | 73 |
SCREEN_ADMIN_LOGIN = 'tamron:screen:admin:login:%s:%s' # brand_id, token |
74 |
+ |
|
75 |
+SUBSCRIBE_USERINFO_LIST = 'subscribe:userinfo:%s' |